/*
 * @(#)PersonalRelationship.java
 * Date 2013-08-08
 * Version 1.0
 * Author Jim Horner
 * Copyright (c)2012
 */


package us.hornerscorners.lamppost.model.patient;

import org.codehaus.jackson.annotate.JsonIgnoreProperties;
import us.hornerscorners.lamppost.model.common.CodedElement;
import us.hornerscorners.lamppost.model.common.TimeInterval;


/**
 *
 * @author jim
 *
 * <personalRelationship classCode="PRS">
 *   <code codeSystem="2.16.840.1.113883.5.111"
 *          codeSystemName="PersonalRelationshipRoleType"
 *          code="MTH" displayName="Mother"/>
 *   <relationshipHolder1 classCode="PSN" determinerCode="INSTANCE">
 *       <name xsi:type="PN">
 *           <family qualifier="BR">BEVERIDGE</family>
 *       </name>
 *   </relationshipHolder1>
 * </personalRelationship>
 *
 * PRPAMT201301UV02PersonalRelationship
 *
 */
@JsonIgnoreProperties(ignoreUnknown = true)
public class PersonalRelationship extends ContactParty {

    /** Field description */
    private TimeInterval effectiveTime;

    /** Field description */
    private CodedElement relationshipCode;

    /** Field description */
    private CodedElement statusCode;

    /**
     * Constructs ...
     *
     */
    public PersonalRelationship() {

        super();
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public TimeInterval getEffectiveTime() {
        return effectiveTime;
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public CodedElement getRelationshipCode() {
        return relationshipCode;
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public CodedElement getStatusCode() {
        return statusCode;
    }

    /**
     * Method description
     *
     *
     * @param effectiveTime
     */
    public void setEffectiveTime(TimeInterval effectiveTime) {
        this.effectiveTime = effectiveTime;
    }

    /**
     * Method description
     *
     *
     * @param relationshipCode
     */
    public void setRelationshipCode(CodedElement relationshipCode) {
        this.relationshipCode = relationshipCode;
    }

    /**
     * Method description
     *
     *
     * @param statusCode
     */
    public void setStatusCode(CodedElement statusCode) {
        this.statusCode = statusCode;
    }
}
